Generally, the power of an information processing system connected to a network is left on at least while the network is in service. When it is required in the use of the information processing system to maintain the system in the power on state for a certain period of time, hot plugging is desirable even in the case of replacing the CPU for maintenance to improve the reliability of the system. In other words, it is preferable that the CPU can be dynamically replaced without shutting down the operating system (OS).
One way to enable such dynamic replacement of CPU is by designing entire software including the OS to support the dynamic CPU replacement. In the following, a description will be given of a conventional dynamic CPU replacement method based on the design of the OS, etc. applied to an information processing system that is provided with cell boards as replaceable unit parts each having CPUs, a memory and a main memory controller (MMC). FIG. 1 is a block diagram showing a constructional example of a conventional information processing system.
As can be seen in FIG. 1, the information processing system comprises an information processor P and a service processor R, which are interconnected with each other. The information processor P includes cell boards 1 (1a, 1b, 1a′), connectors 2 (2a, 2b, 2c), a storage and an internal bus. The cell board 1a′ is a replacement cell board. The storage stores OS P3. A part of codes of the OS P3 is loaded into a main memory(s) (memory 13a and/or memory 13b) to execute themselves by a boot loader (not shown) on the cell board(s) 1 or by the OS P3 itself dynamically. The cell board 1 is connected to the internal bus via the connector 2, and operates by the OS P3. The OS P3 is designed to support the dynamic CPU replacement, and usually dedicated for its hardware (information processor P). The cell boards 1 (1a, 1b), connectors 2 (2a, 2b), storage and internal bus constitute a partition P1 that also operates by the OS P3. The cell board 1 has CPUs 11 and 12, a memory 13 and an MMC 15. With this configuration, the information processor P serves as a symmetric multiprocessor (SMP) using a common distributed shared memory. That is, the CPUs 11 and 12 operates using the memory area of the entire partition P1 according to control by the MMC 15 in the cell board 1.
Next, the operation of the conventional information processing system for the dynamic CPU replacement will be explained with reference to FIG. 2. FIG. 2 is a flowchart showing operation for dynamically replacing the CPU in the information processing system. First, the service processor R instructs the respective MMCs 15 in the cell boards 1 (1a, 1b, 1a′) to copy data stored in the memory 13a in the cell board 1a onto the memory 13a′ in the replacement cell board 1a′ (step P11). The MMCs 15 in the cell boards 1 (1a, 1b, 1a′) start copying the data from the memory 13a to the memory 13a′ at the instruction, and notify the service processor R of completion of the copying when it has been finished (step P12). On receipt of the notice, the service processor R instructs the OS P3 in the partition P1 to remove the CPUs 11a and 12a in the cell board 1a (step P13).
The OS P3 in the partition PI reschedules the process of jobs being executed by the CPUs 11a and 12a of the cell board 1a to the CPUs 11b and 12b of the cell board 1b, and removes the cell board 1a including the CPUs 11a and 12a from the OS P3. That is, processing by the CPUs 11 and 12 is degenerated. After removing the cell board 1a, the OS P3 notifies the service processor R of completion of the removal (step P14). Having received the notice, the service processor R instructs the MMCs 15 in the cell boards 1 (1a, 1b, 1a′) to stop the memory copying (step P15). The MMCs 15 in the cell boards 1 (1a, 1b, 1a′) stop the memory copying at the instruction, and notify the service processor R about that (step P16). Subsequently, the service processor R instructs the OS P3 to incorporate the cell board 1a′ having the CPUs 11a′ and 12a′ (step P17). Accordingly, the OS P3 incorporates the cell board 1a′ having the CPUs 11a′ and 12a′ to restore the processing to the original state out of the degenerated state, and notifies the service processor R of completion of the incorporation (step P18). Having received the notice, the service processor R informs an operator that the removal of the call board 1a and the incorporation of the cell board 1a′ have been completed (step P19).
The above-described conventional method for dynamically replacing the CPU is sometimes employed for a mainframe in which software such as the OS is integrated into particular hardware. However, in order to apply the conventional method, software such as the OS should be designed to support the dynamic CPU replacement since replaceable unit parts are removed or incorporated by the function of the OS. Consequently, it is required to provide the OS with complicated functions to carry out rescheduling and the like so that a replacement CPU can execute jobs being run by a CPU to be replaced. Thus, design load for software is increased.
In addition, when applying the conventional method to an open system (a system that is manufactured to public standards and/or de-facto standards so as to be compatible with products of other companies) such as an open server in which software and hardware produced by different manufacturers are combined, the software should be one of general purpose software supporting the dynamic CPU replacement. This narrows the range of choice for software. Considering the present situation where there are a small number of commercial OSs that support the dynamic CPU replacement, and besides, the open system is used for various purposes, it is difficult to adopt the conventional method for the open system.